package com.yuke.cloud.service.api.wmc.service.hystrix;

import com.github.pagehelper.PageInfo;
import com.yuke.cloud.common.util.wrapper.WrapMapper;
import com.yuke.cloud.common.util.wrapper.Wrapper;
import com.yuke.cloud.service.api.pmc.dto.ProdSpecInfoExDto;
import com.yuke.cloud.service.api.smc.dto.SmcShopDto;
import com.yuke.cloud.service.api.wmc.dto.*;
import com.yuke.cloud.service.api.wmc.service.WmcStorageFeignApi;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.RequestBody;

import java.util.List;
import java.util.Map;

@Slf4j
@Component
public class WmcStorageFeignApiHystrix implements WmcStorageFeignApi {
    @Override
    public List<StorageDto> getStorageNum(List<StorageDto> dto) {
        return null;
    }

    @Override
    public List<Long> getshopidbywarehousename(Long warehouseId) {
        return null;
    }

    @Override
    public List<Map> getWarehouseName(List<Long> shopids) {
        return null;
    }

    @Override
    public Wrapper<PageInfo<Map>> getassreturn(Map map) {
        return null;
    }

    @Override
    public Wrapper<PageInfo<Map>> getassreturn2(Map map) {
        return null;
    }

    @Override
    public Wrapper<PageInfo<Map>> getassreturn3(Map map) {
        return null;
    }

    @Override
    public Object getlogistics(Map map) {
        return null;
    }

    @Override
    public Long getwarehouseinfo(Long shopid) {
        return null;
    }

    @Override
    public Wrapper preadd(String name) {
        return null;
    }

    @Override
    public Wrapper getwarehouseidbyshopid(Long name1) {
        return null;
    }

    @Override
    public boolean ifexits(Long orderId) {
        return false;
    }

    @Override
    public Wrapper preadd2(String ss) {
        return null;
    }

    @Override
    public Integer getrefundamound(Long orderId) {
        return null;
    }

    @Override
    public void preadd3(String sz) {

    }

    @Override
    public int assessinfo(Long orderId) {
        return 0;
    }

    @Override
    public Wrapper<Map<Long, Integer>> getCityStockCount(Long regionCityId, List<Long> specIds) {
        return WrapMapper.error("微服务不在线");
    }

    @Override
    public Wrapper<Map<Long, Integer>> getCityAllStockCount(Long regionCityId) {
        return WrapMapper.error("微服务不在线");
    }

    @Override
    public Wrapper<List<WareProductDto>> getRemoteStock(List<Long> specIds, Long localWarehouseId) {
        return WrapMapper.error("微服务不在线");
    }

    @Override
    public Wrapper<Map<Long, Integer>> getWarehouseStockCount(Long warehouseId, List<Long> specIds) {
        return WrapMapper.error("微服务不在线");
    }

    @Override
    public Wrapper<List<WarehouseInfoDto>> getWarehouseInfo(List<Long> warehouseIds) {
        return WrapMapper.error("微服务不在线");
    }

    @Override
    public List<StorageDto> getStorageInfo() {
        return null;
    }

    @Override
    public Wrapper updateStorageNum(@RequestBody List<StorageDto> storageDtos){
        return null;
    }


    @Override
    public List<WarehouseInfoDto> getWarehouseInfoByGroupId(Long groupId) {
        log.info("getWarehouseInfoByGroupId熔断");
        return null;
    }

    @Override
    public List<StorageSpecInfoDto> getStorageInfoByCategoryIds(List<Long> categoryIds, Long shopId){
        log.info("getStorageInfoByCategoryIds熔断");
        return null;
    }

    @Override
    public List<StorageSpecInfoDto> getStorageInfoByCondition(StorageSpecInfoDto storageSpecInfoDto, Long shopId){
        log.info("getStorageInfoByCondition熔断");
        return null;
    }

    @Override
    public List<StorageSpecInfoDto> getStorageInfoBySpecIds(List<Long> specIds, Long shopId){
        log.info("getStorageInfoBySpecIds熔断");
        return null;
    }

    @Override
    public StorageDto getStorageInfos(Long specId) {
        log.info("getStorageInfos熔断");
        return null;
    }

    @Override
    public List<ProdSpecInfoExDto> getStorageSpecBySpecIds(Long shopId, List<Long> specIds, Byte cartType){
        log.info("getStorageSpecBySpecIds熔断");
        return null;
    }

    @Override
    public List<StorageSpecInfoDto> getProdStorageSpecBySpecIds(List<Long> specIds,Long shopId){
        log.info("getProdStorageSpecBySpecIds熔断");
        return null;
    }



    @Override
    public int bindWarehouseShop(SmcShopDto smcShopDto){
        log.info("addWarehouseShop熔断");
        return 0;
    }

    @Override
    public Wrapper<List<WareProductDto>> getInfoWarehouseIds(List<Long> specIds) {
        log.info("getInfoWarehouseIds熔断");
        return null;
    }

    @Override
    public List<StorageSpecInfoDto> getProdSpecInfo(List<Long> specIds) {
        log.info(" getProdSpecInfo熔断");
        return null;
    }

    @Override
    public Wrapper<Long> getGroupIdByShopId(Long shopId) {
        log.info(" getGroupIdByShopId熔断");
        return null;
    }

    @Override
    public List<ProdSpecInfoExDto> getStorageSpecByStorageIds(List<Long> storageIds, Byte cartType){
        log.info("getStorageSpecByStorageIds熔断");
        return null;
    }

    @Override
    public List<StorageSpecInfoDto> getWmsSpecInfoBySpecIds(List<Long> specIds,Long shopId){
        log.info("getWmsSpecInfoBySpecIds熔断");
        return null;
    }

    @Override
    public List<WmsGiftDto> getGiftList(WmsGiftDto wmsGiftDto){
        log.info("getGiftList熔断");
        return null;
    }

    @Override
    public Integer updateWmsGift(@RequestBody WmsGiftDto wmsGiftDto){
        log.info("updateWmsGift熔断");
        return 0;
    }

    @Override
    public List<StorageSpecInfoDto> getAllStorageInfoBySpecIds(List<Long> specIds, Long shopId){
        log.info("getAllStorageInfoBySpecIds熔断");
        return null;
    }

    @Override
    public List<StorageSpecInfoDto> getAllStorageBySpecIds(List<Long> specIds, Long warehouseId){
        log.info("getAllStorageBySpecIds熔断");
        return null;
    }

    @Override
    public List<Map> findByPostion(Double latitude, Double longitude,Long distance){
        log.info("findByPostion熔断");
        return null;
    }

    @Override
    public List<Long>  getBrandsByCategorys(List<Long> categoryIds,String specName,Byte saleType, Long shopId){
        log.info("getBrandsByCategorys熔断");
        return null;
    }

    @Override
    public List<StorageDto> getStorageInfoByStorageIds (List<Long> storageIds){
        log.info("getStorageInfoByStorageIds熔断");
        return null;
    }

    @Override
    public Wrapper<List<WarehouseInfoDto>> getAllWarehouse (String warehouseName, String wareType){
        log.info("getAllWarehouse熔断");
        return null;
    }

    @Override
    public Wrapper<List<StorageDto>> selectWmsSpecsByProductId(@RequestBody StorageDto storageDto) {
        log.info("selectWmsSpecsByProductId熔断");
        return null;
    }

    @Override
    public WarehouseInfoDto saveWarehouse(@RequestBody WarehouseInfoDto warehouseInfoDto){
        log.info("saveWarehouse熔断");
        return null;
    }


    @Override
    public Wrapper saveWarehouseGroup(Long groupId, Long warehouseId){
        log.info("saveWarehouseGroup熔断");
        return null;
    }

    @Override
    public Wrapper saveWarehouseShop(Long warehouseId, Long shopId){
        log.info("saveWarehouseShop熔断");
        return null;
    }

    @Override
    public List<WmsFlowApiDto> findOrderFlow(List<Long> collect) {
        log.info("findOrderFlow熔断");
        return null;
    }


}
